-
Notifications
You must be signed in to change notification settings - Fork 28.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[SPARK-39006][K8S] Check PVC claimName must be OnDemand when multiple executors required #36333
Conversation
… executors required
Pass IT test
|
@dongjoon-hyun |
Can one of the admins verify this patch? |
...netes/core/src/main/scala/org/apache/spark/deploy/k8s/features/MountVolumesFeatureStep.scala
Outdated
Show resolved
Hide resolved
val executorConf = | ||
KubernetesTestConf.createExecutorConf(sparkConf = conf, volumes = Seq(volumeConf)) | ||
val executorStep = new MountVolumesFeatureStep(executorConf) | ||
assertThrows[IllegalArgumentException] { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IMO it would be good to assert on the exception message too. Or use a specialized exception.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for your help. I have addressed this comment.
…ark/deploy/k8s/features/MountVolumesFeatureStep.scala Co-authored-by: Martin Grigorov <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, but -1 for this proposal because this will break SPARK-32713.
Apache Spark has been supporting claimName=pvc-spark-SPARK_EXECUTOR_ID
style before OnDemand
feature.
Let me close this first. We can continue to discuss and reopen if there is a valid reason, @dcoliversun . |
@dongjoon-hyun I can also check |
To me, this PR sounds like a misleading UX instead of improving UX.
|
I could change the title as |
You are still misunderstanding SPARK-32713 which supports multiple executors :)
|
@dcoliversun If you want to continue in your way, I'd like to recommend to revise the JIRA issue first like |
@dongjoon-hyun Thanks for your help and I will revise the JIRA issue. I want to confirm with you that my understanding is correct. |
replace with #36374 |
What changes were proposed in this pull request?
This PR aims to check PVC claimName must be
OnDemand
when multiple executors required.Why are the changes needed?
#29846 supports dynamic PVC creation/deletion for K8s executors. When not set
spark.kubernetes.executor.volumes.persistentVolumeClaim.spark-local-dir-1.options.claimName
beonDemand
, it will retry to create executor pods long time because pvc with same name already exists.After this PR, spark application exits with IllegalArgumentException at once and help user to fix parameter.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Add new unit test.